package com.itheima.mapper;

import com.itheima.pojo.EmpExpr;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface EmpExprMapper {
    void saveBatch(List<EmpExpr> exprList);

    void deleteByEmpIds(List<Integer> empIds);

    /**
     * 查询id为1的emp_expr，我们故意制造一些 字段名与属性名不一致的情况，
     * select id expr_id, emp_id, begin, end, company, job expr_job from emp_expr where id = ?
     * 复习一下：字段名与属性名不同的处理方式
     *  1. 注解方式：@Results+@Result。注意：
     *      主键字段必须设置为id=true
     *      非主键字段名如果和属性名相同，可以省略不配置
     *      注解配置SQL、要使用 注解配置 字段与属性的映射
     *  2. XML配置：resultMap标签。注意：
     *      xml配置SQL、要使用 xml的resultMap配置 字段与属性的映射
     */
    /*@Results(value = {
            //告诉Mybatis，实体类的id属性 从结果集的expr_id字段里取值，并且这是个主键字段
            @Result(property = "id", column = "expr_id", id = true),
            @Result(property = "job", column = "expr_job")
    })
    @Select("select id expr_id, emp_id, begin, end, company, job expr_job from emp_expr where id = #{id}")*/
    EmpExpr demoSelectById(Integer id);
}
